
package br.unb.mestrado.simulator.model.simulator.formula;

import br.unb.mestrado.simulator.model.simulator.ContextGoal;


public class MultiCriteriaFormula extends QualityFormula{
	
	private MultiCriteriaParameter reliability;
	private MultiCriteriaParameter quality;
	private MultiCriteriaParameter quantity;
	private MultiCriteriaParameter lifetime;
	private MultiCriteriaParameter sample;
	
	private ContextGoal contextGoal;

	public MultiCriteriaParameter getReliability() {
		return reliability;
	}
	public void setReliability(MultiCriteriaParameter reliability) {
		this.reliability = reliability;
	}
	public MultiCriteriaParameter getQuality() {
		return quality;
	}
	public void setQuality(MultiCriteriaParameter quality) {
		this.quality = quality;
	}
	public MultiCriteriaParameter getLifetime() {
		return lifetime;
	}
	public void setLifetime(MultiCriteriaParameter lifetime) {
		this.lifetime = lifetime;
	}
	public MultiCriteriaParameter getQuantity() {
		return quantity;
	}
	public void setQuantity(MultiCriteriaParameter quantity) {
		this.quantity = quantity;
	}
	public MultiCriteriaParameter getSample() {
		return sample;
	}
	public void setSample(MultiCriteriaParameter sample) {
		this.sample = sample;
	}
	
	public MultiCriteriaParameter[] getParameters(){
		return new MultiCriteriaParameter[]{getQuality(),getQuantity(),getReliability(),getLifetime(),getSample()};
	}
	public ContextGoal getContextGoal() {
		return contextGoal;
	}
	public void setContextGoal(ContextGoal contextGoal) {
		this.contextGoal = contextGoal;
	}
	
	@Override
	public String toString() {
		return " MCF [Relia=" + reliability.toString()
				+ ", Qual=" + quality.toString() + ", Quant=" + quantity.toString()
				+ ", Life=" + lifetime.toString() + ", Samp=" + sample.toString() + "]";
	}
	
}